package expertise.security.authentication.user;

import java.util.ArrayList;
import java.util.Collection;

import expertise.security.authentication.user.authorities.ExpertiseAuthorities;

public class ExpertiseUserImpl implements ExpertiseUser {

    /**
     * Serial version UID.
     */
    private static final long serialVersionUID = -8954402679164406623L;

    private String email = "bdgould@smcm.edu";

    private String firstName = "ben";

    private String lastName = "gould";

    private String password = "password";

    private Collection<ExpertiseAuthorities> authorities = new ArrayList<>();

    public ExpertiseUserImpl() {
        authorities.add(ExpertiseAuthorities.ROLE_USER);
    }

    @Override
    public String getEmail() {
        return email;
    }

    @Override
    public String getFirstName() {
        return firstName;
    }

    @Override
    public String getLastName() {
        return lastName;
    }

    /*
     * User Details methods.
     */

    /**
     * {@inheritDoc}
     */
    @Override
    public Collection<ExpertiseAuthorities> getAuthorities() {
        return authorities;
    }

    @Override
    public String getPassword() {
        return password;
    }

    @Override
    public String getUsername() {
        return email;
    }

    @Override
    public boolean isAccountNonExpired() {
        // TODO Auto-generated method stub
        return true;
    }

    @Override
    public boolean isAccountNonLocked() {
        // TODO Auto-generated method stub
        return true;
    }

    @Override
    public boolean isCredentialsNonExpired() {
        // TODO Auto-generated method stub
        return true;
    }

    @Override
    public boolean isEnabled() {
        // TODO Auto-generated method stub
        return true;
    }

}
